package demo.dao;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import demo.dto.ProductDTO;
import demo.model.Product;

public interface IProductDao {
	
	/**��ѯ��������Ʒ������
	 * @param id
	 * @return
	 */
	int getCountByCategoryId(Integer id);

	/**��ѯ������Ʒ
	 * @param dto ��ҳ����������
	 * @return
	 */
	List<Product> findAll(ProductDTO dto);
	
	/**�Ƽ���Ʒ
	 * @param id ��Ʒ���
	 * @param today �Ǳ�ʾ�Ƽ������ʾȡ���Ƽ�
	 * @return 1��ʾ�����ɹ�
	 */
	int recommend(@Param("id")int id,@Param("today")String today);
	
	/**�ϼ�/�¼�
	 * @param id ��Ʒ���
	 * @param isPutOnSale �Ǳ�ʾ�ϼܣ����ʾ�¼�
	 * @return 1��ʾ�����ɹ�
	 */
	int isPutOn(int id,String isPutOnSale);
	
	
	/**�޸���Ʒ��ͼƬ
	 * @param id ��Ʒ���
	 * @param url ��ͼƬ��ַ
	 * @return 1��ʾ�޸ĳɹ�
	 */
	int updateUrl(int id,String url);
	
	/**ɾ����Ʒ
	 * @param id ��Ʒ���
	 * @return 1��ʾɾ���ɹ�
	 */
	int del(int id);
	
	/**������Ʒ
	 * @param p �µ���Ʒ��Ϣ
	 * @return 1��ʾ�޸ĳɹ�
	 */
	int edit(Product p);
	
	/**�����Ʒ
	 * @param p ������Ʒ��Ϣ
	 * @return 1��ʾ��ӳɹ�
	 */
	int add(Product p);
	
	
	/**���ܼ�¼��
	 * @param dto ��ѯ����
	 * @return �ܼ�¼��
	 */
	int getCount(ProductDTO dto);
	
	/**��ѯ���ձ�����Ʒ
	 * @return ���ձ�����Ʒ�б�
	 */
	List<Product> findToday();
	
	/**id查询
	 * @param id
	 * @return
	 */
	Product findById(Integer id);

}
